package com.ruoyi.system.service;

import java.util.List;
import com.ruoyi.system.domain.SysArea;

/**
 * 地区Service接口
 * 
 * @author ruoyi
 * @date 2024-08-07
 */
public interface ISysAreaService 
{
    /**
     * 查询地区
     * 
     * @param areaId 地区主键
     * @return 地区
     */
    public SysArea selectSysAreaByAreaId(Long areaId);

    /**
     * 查询地区列表
     * 
     * @param sysArea 地区
     * @return 地区集合
     */
    public List<SysArea> selectSysAreaList(SysArea sysArea);

    /**
     * 新增地区
     * 
     * @param sysArea 地区
     * @return 结果
     */
    public int insertSysArea(SysArea sysArea);


    /**
     * 新增根地区
     * @param sysArea
     * @return
     */
    public int insertRootSysArea(SysArea sysArea);


    /**
     * 判断部门是否存在地区
     * @param deptId
     * @return
     */
    public boolean checkAreaByDeptId(Long deptId);
    /**
     * 修改地区
     * 
     * @param sysArea 地区
     * @return 结果
     */
    public int updateSysArea(SysArea sysArea);

    /**
     * 批量删除地区
     * 
     * @param areaIds 需要删除的地区主键集合
     * @return 结果
     */
    public int deleteSysAreaByAreaIds(Long[] areaIds);

    /**
     * 是否有子区域
     * @param areaId
     * @return
     */
    public boolean hasChildByAreaId(Long areaId);
    /**
     * 删除地区信息
     * 
     * @param areaId 地区主键
     * @return 结果
     */
    public int deleteSysAreaByAreaId(Long areaId);
}
